A Definitional Encoding of TLA* in Isabelle/HOL
نویسندگان
چکیده
We mechanise the logic TLA∗ [8], an extension of Lamport’s Temporal Logic of Actions (TLA) [5] for specifying and reasoning about concurrent and reactive systems. Aiming at a framework for mechanising the verification of TLA (or TLA∗) specifications, this contribution reuses some elements from a previous axiomatic encoding of TLA in Isabelle/HOL by the second author [7], which has been part of the Isabelle distribution. In contrast to that previous work, we give here a shallow, definitional embedding, with the following highlights: • a theory of infinite sequences, including a formalisation of the concepts of stuttering invariance central to TLA and TLA*; • a definition of the semantics of TLA*, which extends TLA by a mutually-recursive definition of formulas and pre-formulas, generalising TLA action formulas; • a substantial set of derived proof rules, including the TLA* axioms and Lamport’s proof rules for system verification; • a set of examples illustrating the usage of Isabelle/TLA* for reasoning about systems. Note that this work is unrelated to the ongoing development of a proof system for the specification language TLA+, which includes an encoding of TLA+ as a new Isabelle object logic [1]. A previous version of this embedding has been used heavily in the work described in [4].
منابع مشابه
Inductive Datatypes in HOL - Lessons Learned in Formal-Logic Engineering
Isabelle/HOL has recently acquired new versions of definitional packages for inductive datatypes and primitive recursive functions. In contrast to its predecessors and most other implementations, Isabelle/HOL datatypes may be mutually and indirect recursive, even infinitely branching. We also support inverted datatype definitions for characterizing existing types as being inductive ones later. ...
متن کاملAn Encoding of TLA in Isabelle
This note describes the representation of Lamport's Temporal Logic of Actions that comes with the standard distribution of the generic theorem prover Isabelle. It is based on a simple technique for embedding possible-worlds based logics in Isabelle. 1 Background Formal methods will only be applied in practice if they are supported by suuciently powerful, highly automated, and extensible proof t...
متن کاملProving the Correctness of Disk Paxos in Isabelle/HOL
Disk Paxos [GL00] is an algorithm for building arbitrary faulttolerant distributed systems. The specification of Disk Paxos has been proved correct informally and tested using the TLC model checker, but up to now, it has never been fully formally verified. In this work we have formally verified its correctness using the Isabelle theorem prover and the HOL logic system [NPW02], showing that Isab...
متن کاملPrimitively (Co)recursive Definitions for Isabelle/HOL
Isabelle/HOL has recently been enriched with a definitional package for datatypes and codatatypes. The package introduces the specified types and derives auxiliary constants and characteristic theorems, notably (co)recursors and (co)induction principles. We now introduce support for high-level specifications of (co)recursive functions, in the form of three commands: primrec, primcorec, and prim...
متن کاملMajority Vote Algorithm Revisited Again
In his article Experience with Software Specification and Verification Using LP, the Larch Proof Assistant, Manfred Broy verified (as one of his smaller case studies) the Majority Vote Algorithm by Boyer and Moore. LP requires that all user theories are expressed axiomatically. I reworked the example in Isabelle/HOL and turned it into a definitional development, thus proving its consistency. In...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Archive of Formal Proofs
دوره 2011 شماره
صفحات -
تاریخ انتشار 2011